home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 January: Mac OS SDK / Dev.CD Jan 98 SDK1.toast / Development Kits (Disc 1) / Interfaces&Libraries / Universal / Interfaces / AIncludes / CMAcceleration.a < prev    next >
Encoding:
Text File  |  1997-08-12  |  4.4 KB  |  116 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        CMAcceleration.a
  3. ;
  4. ;    Contains:    ColorSync 2.0 Acceleration Component Interfaces
  5. ;
  6. ;    Version:    Technology:    ColorSync 2.0
  7. ;                Release:    Universal Interfaces 3.0.1
  8. ;
  9. ;    Copyright:    © 1995, 1997 by Apple Computer, Inc., all rights reserved.
  10. ;
  11. ;    Bugs?:        Please include the the file and version information (from above) with
  12. ;                the problem description.  Developers belonging to one of the Apple
  13. ;                developer programs can submit bug reports to:
  14. ;
  15. ;                    devsupport@apple.com
  16. ;
  17. ;
  18.     IF &TYPE('__CMACCELERATION__') = 'UNDEFINED' THEN
  19. __CMACCELERATION__ SET 1
  20.  
  21.     IF &TYPE('__COMPONENTS__') = 'UNDEFINED' THEN
  22.     include 'Components.a'
  23.     ENDIF
  24.     IF &TYPE('__CMAPPLICATION__') = 'UNDEFINED' THEN
  25.     include 'CMApplication.a'
  26.     ENDIF
  27.  
  28. ;  –––––––––––––––––––––––––––––––––––––– version info 
  29.  
  30. cmAccelerationInterfaceVersion    EQU        1
  31. ;  –––––––––––––––––––––––––––––––––––––– Component Type 
  32.  
  33. cmAccelerationComponentType        EQU        'csac'
  34. ;  –––––––––––––––––––––––––––––––––––––– Required Component function selectors 
  35.  
  36. cmLoadTables                    EQU        0
  37. cmCalculateData                    EQU        1
  38. ;  –––––––––––––––––––––––––––––––––––––– table data for acceleration component 
  39. CMAccelerationTableData    RECORD 0
  40. inputLutEntryCount         ds.l    1                ; offset: $0 (0)        ;  count of entries for input lut for one dimension
  41. inputLutWordSize         ds.l    1                ; offset: $4 (4)        ;  count of bits of each entry ( e.g. 16 for WORD )
  42. inputLut                 ds.l    1                ; offset: $8 (8)        ;  handle to input lut
  43. outputLutEntryCount         ds.l    1                ; offset: $C (12)        ;  count of entries for output lut for one dimension    
  44. outputLutWordSize         ds.l    1                ; offset: $10 (16)        ;  count of bits of each entry ( e.g. 8 for BYTE )
  45. outputLut                 ds.l    1                ; offset: $14 (20)        ;  handle to output lut
  46. colorLutInDim             ds.l    1                ; offset: $18 (24)        ;  input dimension  ( e.g. 3 for LAB ; 4 for CMYK )
  47. colorLutOutDim             ds.l    1                ; offset: $1C (28)        ;  output dimension ( e.g. 3 for LAB ; 4 for CMYK )
  48. colorLutGridPoints         ds.l    1                ; offset: $20 (32)        ;  count of gridpoints for color lut ( for one Dimension )    
  49. colorLutWordSize         ds.l    1                ; offset: $24 (36)        ;  count of bits of each entry ( e.g. 8 for BYTE )
  50. colorLut                 ds.l    1                ; offset: $28 (40)        ;  handle to color lut
  51. inputColorSpace             ds.l    1                ; offset: $2C (44)        ;  packing info for input
  52. outputColorSpace         ds.l    1                ; offset: $30 (48)        ;  packing info for output
  53. userData                 ds.l    1                ; offset: $34 (52)
  54. reserved1                 ds.l    1                ; offset: $38 (56)
  55. reserved2                 ds.l    1                ; offset: $3C (60)
  56. reserved3                 ds.l    1                ; offset: $40 (64)
  57. reserved4                 ds.l    1                ; offset: $44 (68)
  58. reserved5                 ds.l    1                ; offset: $48 (72)
  59. sizeof                     EQU *                    ; size:   $4C (76)
  60.                         ENDR
  61. ; typedef struct CMAccelerationTableData * CMAccelerationTableDataPtr
  62.  
  63. ; typedef CMAccelerationTableDataPtr *    CMAccelerationTableDataHdl
  64.  
  65. ;  –––––––––––––––––––––––––––––––––––––– calc data for acceleration component 
  66. CMAccelerationCalcData    RECORD 0
  67. pixelCount                 ds.l    1                ; offset: $0 (0)        ;  count of input pixels
  68. inputData                 ds.l    1                ; offset: $4 (4)        ;  input array
  69. outputData                 ds.l    1                ; offset: $8 (8)        ;  output array
  70. reserved1                 ds.l    1                ; offset: $C (12)
  71. reserved2                 ds.l    1                ; offset: $10 (16)
  72. sizeof                     EQU *                    ; size:   $14 (20)
  73.                         ENDR
  74. ; typedef struct CMAccelerationCalcData * CMAccelerationCalcDataPtr
  75.  
  76. ; typedef CMAccelerationCalcDataPtr *    CMAccelerationCalcDataHdl
  77.  
  78.  
  79. ;   ———————————————————————————————————————————————————————————————————————————————————————————————— 
  80. ;                  A c c e l e r a t i o n   C o m p o n e n t   I n t e r f a c e s
  81. ;   ———————————————————————————————————————————————————————————————————————————————————————————————— 
  82.  
  83.  
  84. ;
  85. ; pascal CMError CMAccelerationLoadTables(ComponentInstance CMSession, CMAccelerationTableDataPtr tableData)
  86. ;
  87.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  88.         Macro
  89.         _CMAccelerationLoadTables
  90.             move.l              #$00040000,-(sp)
  91.             moveq               #0,D0
  92.             dc.w                $A82A
  93.         EndM
  94.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  95.         IMPORT_CFM_FUNCTION CMAccelerationLoadTables
  96.     ENDIF
  97.  
  98.  
  99. ;
  100. ; pascal CMError CMAccelerationCalculateData(ComponentInstance CMSession, CMAccelerationCalcDataPtr calcData)
  101. ;
  102.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  103.         Macro
  104.         _CMAccelerationCalculateData
  105.             move.l              #$00040001,-(sp)
  106.             moveq               #0,D0
  107.             dc.w                $A82A
  108.         EndM
  109.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  110.         IMPORT_CFM_FUNCTION CMAccelerationCalculateData
  111.     ENDIF
  112.  
  113.  
  114.     ENDIF ; __CMACCELERATION__ 
  115.  
  116.